<?php
namespace lib\builtin\auth;

interface HasPermissionsInterface
{
    /**
     * 给定权限代码
     * 判断是否具有此权限
     *
     * @param string $code 权限代码
     * @return bool 有无权限
     */
    public function can($code);

    /**
     * 要求指定权限
     * 如果没有权限则抛出错误
     *
     * @param string $code 权限代码
     * @throws \lib\builtin\auth\NoPermissionException
     * @return void
     */
    public function needPermission($code);
}
